/**********************************
* timing.h
* Définition de la base de temps globale cadencée à la milliseconde
* Par Guillaume STRUB (MIQ4) le 22/02/2011
**********************************/

#ifndef _timing_H
#define _timing_H

/* Definition des timeouts de réception de trames (en ms) */
//!Timeout trame carte capteurs (en ms)
#define CAPTEURS_TIMEOUT		2000
//!Timeout centrale inertielle (en ms)
#define ANGLES_TIMEOUT			100 // JW. Avant: 50
//!Timeout télécommande (en ms)
#define TELECOMMANDE_TIMEOUT        500 // JW. Avant: 250
/* Definition des timeouts d'affichage du niveau de batterie (en ms) */
#define BATTERY_TIMEOUT			60000	//mode_vol.c [1]	//Toutes les minutes
#define HEARTBEAT_TIMEOUT 333
//! Nombre de millisecondes écoulées depuis le démarrage du drone
extern volatile unsigned long gTimer;

extern volatile unsigned long lastAnglesMAJ;
extern volatile unsigned long lastHeartbeatMAJ;
extern volatile unsigned long lastCapteursMAJ;
extern volatile unsigned long lastTelecommandeMAJ;
extern volatile unsigned long lastBatteryMAJ;

unsigned long TimeoutIMU();
unsigned long TimeoutCapteurs();
unsigned long TimeoutTelecommande();
unsigned long TimeoutHeartbeat();
unsigned long TimeoutBatterie();

#endif
